package com.example.zyl.common.query.page;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.example.zyl.common.utils.ConditionUtils;
import lombok.AllArgsConstructor;
import lombok.NoArgsConstructor;
import lombok.Setter;

/**
 * 公共分页请求类
 *
 * @author zyl
 * @since 2023-11-06
 */
@NoArgsConstructor
@AllArgsConstructor
@Setter
public class PageParam<H, T> {

    /**
     * 请求数据
     */
    private T param;

    /**
     * 请求分页参数
     */
    private Page<H> page;


    public T getParam() {
        ConditionUtils.throwException(param).accept("请求参数不能为空");
        return param;
    }

    public Page<H> getPage() {
        ConditionUtils.throwException(page).accept("分页参数不能为空");
        return page;
    }
}
